Перейти к статье

 

Составные поверхности

Команда создания составных геометрических объектов в виде поверхностей в случае полного набора опций выглядит следующим образом:

composite create surface <ID_range> [angle <degrees>] [nocurves] [keep [angle <degrees>] [vertex <ID_list>]]

Родственная команда:

graphics composite {on | off}

Опция angle предотвращает удаление кривых при создании составной поверхности. Составной объект не будет сформирован, если угол между нормалями объединяемых поверхностей на смежной кривой больше указанного значения.

При создании составной поверхности составными становятся и кривые на границе новой поверхности. По умолчанию это происходит, если угол между касательными в общей точке меньше 15 градусов. Опция nocurves может использоваться для предотвращения создания составных кривых.

Опция keep применяется, чтобы изменить схему создания составных кривых, принятую по умолчанию. Аргументы, следующие за параметром keep, имеют тот же смысл, как и при создании составных кривых. Параметры nocurves и keep являются взаимоисключающими.

Определение ближайшей точки к составной поверхности

Обычно построить сетку на составной поверхности бывает труднее, чем на исходных поверхностях, объединенных в составную. Для обеспечения генерации сетки на составной поверхности определяется ближайшая точка исходной поверхности. Применяемый метод определения этой точки является приближенным и может давать плохие результаты для поверхностей, составленных из нескольких исходных поверхностей сложной формы.

В модуле виртуальной геометрии предусмотрена возможность изменять способ создания составных поверхностей на основе определения ближайшей точки с помощью команды:

composite closest_pt surface <ID> {GME | emulate}

Способу, применяемому по умолчанию, соответствует параметр emulate; при этом определение ближайшей точки производится достаточно быстро. Использование опции GME приводит к точному вычислению координат ближайшей точки, но операция выполняется значительно медленнее.

Сложные случаи создания составных поверхностей

В некоторых случаях при создании составных поверхностей, например, из трех и более исходных, результат выполнения команды composite create surface не может быть определен однозначно. Один из таких случаев представлен на Рис. 1. В составной объект возможно объединение разных подмножеств исходных поверхностей A, B и C, и при выполнении команды выбирается произвольное подмножество в зависимости от дополнительных факторов. Если кривая BC - общая для поверхностей B и C - не может быть удалена (виртуально) согласно величине угла, заданной опцией команды, или вследствие наличия четвертой поверхности, D, также включающей эту кривую, то команда произвольно выберет создание составной поверхности путем соединения A и B или A и C.

composite.gif

Рис. 1 - Возможные варианты создания составных поверхностей в сложном случае